home *** CD-ROM | disk | FTP | other *** search
/ Whiteline: Alpha / Whiteline Alpha.iso / progtool / gfabasic / gfa_fly / doku / release.txt < prev   
Encoding:
Text File  |  1994-09-22  |  13.9 KB  |  264 lines

  1. ---------------------------------------------------------------------------
  2. - 'Fliegende Dialoge' in GFA-BASIC 3.x                                    -
  3. - (c)1992-1994 Gregor Duchalski                                           -
  4. -                                                                         -
  5. - Version 4.x, History                                                    -
  6. ---------------------------------------------------------------------------
  7.  
  8. Ver.    Datum      ('*' = Version wurde veröffentlicht)
  9.  
  10. 4.0   * 01.03.93   -Erste öffentliche Version der neuen Routinen.
  11.  
  12.         02.03.93   -EXIT-Buttons wurden in der Breite einen Pixel zu groß
  13.                     gezeichnet.
  14.                    -Bei Check-und Radiobuttons wird der Text jetzt nur noch
  15.                     ausgegeben, wenn es wirklich nötig ist. Das verhindert
  16.                     lästiges Flackern und Probleme mit dem Cursor in einem
  17.                     darunterbefindlichen Eingabefeld.
  18.  
  19.       * 06.03.93   -Die Fensterdialoge können unter MTOS nun nicht mehr bedient
  20.                     werden, wenn sie im Hintergrund liegen und mit der rechten
  21.                     Maustaste angeklickt werden. (Gefunden von Mike Steffl)
  22.                    -Circle-Buttons können nun auch per Tastatur mit SHIFT+
  23.                     ALTERNATE+Buchstabe bedient werden. (Abgeguckt von den 
  24.                     Flydials)
  25.  
  26.         07.03.93   -Ein disableter Exit-Button wurde in einer Pixelreihe falsch
  27.                     gezeichnet. (Gefunden von Michael Heng)
  28.  
  29.         15.03.93   -'Pling' beim Anklicken eines Fensters im Hintergrund eines
  30.                     Fensterdialoges, sofern die jeweilige Aktion nicht ausführ-
  31.                     bar ist (z.B. Schließfeld).
  32.  
  33.         19.03.93   -SHIFT+ALTERNATE+<Taste> zur Bedienung eines Circlebuttons
  34.                     funktionierte bei den Fensterdialogen nicht. (Gefunden von
  35.                     Michael Heng)
  36.                    -Zahlen ließen sich nicht als Shortcuts in Dialogen
  37.                     verwenden. (Michael Heng again :-)
  38.                    -Bei einem nicht-Fenster-Dialog werden jetzt keine Message-
  39.                     Ereignisse in 'rsc_do' mehr abgefragt bzw. durchgelassen.
  40.                     Dies konnte z.B. zu Redraw-Problemen in Zusammenhang mit der
  41.                     Dateiauswahlbox führen. (Gefunden von Arne Schween).
  42.  
  43.         20.03.93   -Bei den Fensterdialogen gab es Situationen, in denen der
  44.                     Cursor verschwinden konnte. Das müßte jetzt behoben sein.
  45.  
  46.       * 22.03.93   -Ach Du Schande: Bei den Fensterdialogen wurde in 'rsc_draw'
  47.                     bei WIND_CREATE für die Höhe 'deshk&' verwendet, richtig
  48.                     ist natürlich 'deskh&'. Warum das nie Probleme gab ist mir
  49.                     schleierhaft...
  50.  
  51. 4.5   * 09.06.93   -Assembler-INLINE überarbeitet, 3D-Routinen eingebaut!
  52.                     Sofern die entsprechenden Flags gesetzt sind, erscheinen die
  53.                     Dialoge unter MultiTOS (und nur dort) im 3D-Look. Näheres
  54.                     dazu siehe im geänderten GFA_FLY4.TXT, '3D-Darstellung'.    
  55.  
  56.                    -Die erweiterten Routinen enthalten jetzt fliegende ALERT-
  57.                     Boxen. Zu diesem Zweck mußte die Funktion 'rsc_laden' er-
  58.                     weitert werden, sie bekommt nun noch die Nummer des Alert-
  59.                     Dialoges übergeben. Näheres steht im aktualisierten
  60.                     'GFA_FLYD.TXT'.
  61.  
  62.                    -Die Routinen wurden unter dem Gesichtspunkt 'Verwendung in
  63.                     einem ACC' überarbeitet. Dazu gehört z.B., daß bei den 
  64.                     Fensterdialogen in 'rsc_back' jetzt zusätzlich überprüft
  65.                     wird, ob das Fenster noch geöffnet ist und es nur dann
  66.                     geschlossen wird. Näheres steht im Abschnitt 'Verwendung 
  67.                     in Accessories' im GFA_FLYD.TXT.
  68.  
  69.                    -Es wird jetzt eine Liste der gleichzeitig (übereinander)
  70.                     geöffneten Dialoge mitgeführt. Damit dürften Verstümmelungen
  71.                     und Redraw-Probleme in diesen Fällen Vergangenheit sein.
  72.  
  73.                    -Der rsc_bitblt%-Routine bekommt jetzt auch den Schreibmodus
  74.                     übergeben, damit ist sie endlich universell einsetzbar.
  75.  
  76.                    -In Fensterdialogen waren Popups nicht über den Tastatur-
  77.                     Shortcut des voranstehenden Strings aufrufbar.
  78.  
  79.                    -Zahlen wurden als Tasten-Shortcuts nicht erkannt. Übel,
  80.                     dabei hatte ich das irgendwann mal eingebaut...
  81.  
  82.                    -Die Prozedur 'message_auswerten' bei den Fensterdialogen 
  83.                     muß nun den gesamten AES-Message-Puffer übergeben bekommen.
  84.  
  85.                    -'rsc_do' bekommt jetzt wie die Original-FORM_DO zusätzlich
  86.                     das Objekt übergeben, in dem der Textcursor zu Beginn
  87.                     stehen soll.
  88.  
  89.                    -Die Userblks werden nicht mehr in einem Integer-Feld, son-
  90.                     dern in einem geMALLOCten Bereich abgelegt. In seltenen
  91.                     Fällen konnte es sonst zu Problemen kommen. Damit verbunden
  92.                     ist 'rsc_walk_tree' jetzt als Funktion definiert.
  93.  
  94.                    -Der Assembler-INLINE enthält jetzt eine Routine, die einen
  95.                     Cookie sucht und im Erfolgsfalle dessen Wert zurückliefert.
  96.                     Näheres unter 'Goodies...' im GFA_FLYD.TXT.
  97.  
  98.          18.06.93  -Die Hintergrundrestaurierung in 'rsc_back' etwas abgeändert,
  99.                     jetzt bleiben in keinem Fall unschöne Dialog-Reste zurück.
  100.  
  101.          27.06.93  -Die Parameter-Reihenfolge bei 'rsc_popup' war bei den Fen-
  102.                     sterdialogen vertauscht. Viel nur auf, wenn man beide
  103.                     Versionen mischte.
  104.  
  105.          01.07.93  -Und nur bei den Fensterdialogen wurde in 'rsc_popup' 
  106.                     WIND_UPDATE() gesetzt. Prinzipiell OK, konnte allerdings
  107.                     ebenfalls beim Mischen problematisch werden.
  108.  
  109.        * 05.07.93  -Böse: Zweimal wurde auf die Variable 'rsc_userblk%()' zuge-
  110.                     griffen, die es aber gar nicht mehr gibt. Einen Fehler gab
  111.                     es zum Glück nur, wenn kein Dialogtitel existierte.
  112.  
  113.                    -In einigen Programmteilen wurden Variablen nicht lokal de-
  114.                     finiert, obwohl sie verwendet wurden. Diese und auch die
  115.                     umgekehrten Fälle sollten jetzt behoben sein.
  116.  
  117. 4.6      28.07.93  -Änderung im Aufruf von 'rsc_draw': 'window!' wird durch
  118.                     ein Bitflag ersetzt, mit dem mehr Optionen realisiert
  119.                     werden können. Bisher belegt:
  120.                     Bit 0 -> Fensterdialog
  121.                     Bit 1 -> Schließfeld
  122.                     Weitere Bits sind reserviert. Ihr müßt leider Eure Aufrufe
  123.                     entsprechend anpassen.
  124.  
  125.                    -Objekte können jetzt auch über die Funktionstasten bedient
  126.                     werden. Zur Festlegung werde die Bits 12-15 von OB_FLAGS
  127.                     benutzt, näheres im GFA_FLYD.TXT. In diesem Zusammenhang
  128.                     gehört jetzt auch INTRFACE.RSC zum Lieferumfang. Es ent-
  129.                     hält den angepaßten EXTFLAGS-Dialogbaum.
  130.  
  131.          02.08.93  -Rahmen wurden unter MultiTOS immer in der 3D-Farbe gezeich-
  132.                     net, unabhängig von der Einstellung der 3D-Flags.
  133.  
  134.        * 15.08.93  -Fehler in 'rsc_popup' behoben, der deselektierte Einträge
  135.                     u.U. unmotiviert wählbar machte.
  136.  
  137.                    -Wird kein Popup-Eintrag ausgewählt (Klick daneben, <UNDO>),
  138.                     so wird 'rsc_do' auch nicht mehr verlassen.
  139.  
  140.                    -'rsc_movedial' mußte leider um 2 weitere Parameter erwei-
  141.                     tert werden, um einen Bug in der SOLID-Routine sauber be-
  142.                     heben zu können.
  143.  
  144.                    -Wenn eine Resource ALERT- oder FREE-Bäume enthielt, kam
  145.                     'rsc_laden' nicht ohne Anpassung damit klar. Nun befinden
  146.                     sich entsprechende Zeilen als REMarks im Listing. Näheres
  147.                     steht im GFA_FLY4.TXT unter 'rsc_laden'.
  148.  
  149.                    -Die 3D-Effekte werden nur noch bei einer 3D-Farbe<>0 
  150.                     aktiviert. Z.B. unter ST-Mid sahen einige Objekte sonst 
  151.                     sehr merkwürdig aus.
  152.  
  153.          19.09.93  -Unkorrekte GEMSYS-Aufrufe von APPL_GETINFO und OBJC_SYSVAR
  154.                     korrigiert.
  155.  
  156.          22.09.93  -Sogn. 'Geisterdials' implementiert: Wird die Flydial-Ecke
  157.                     mit gedrückter Zusatztaste (SHIFT, ALT, CONTROL) oder der
  158.                     rechten Maustaste angeklickt, wird der Dialog zunächst
  159.                     entfernt und nur ein Rahmen verschoben. Somit kann man 
  160.                     besser sehen, was hinter dem Dialog ist.
  161.  
  162.                    -'rsc_init', 'rsc_laden' und 'rsc_walktree' intern etwas
  163.                     umstrukturiert. Die wichtigsten Parameter werden jetzt
  164.                     alle in 'rsc_init' ermittelt, dadurch kann z.B. die 
  165.                     Cookie-Routine auch vor dem Laden der eigentlichen 
  166.                     Resource benutzt werden. 'rsc_walktree' erhält nun einen
  167.                     Parameter weniger übergeben.
  168.  
  169.        * 25.09.93  -Probleme mit MAG!X und den 3D-Objekten behoben.
  170.  
  171.          02.10.93  -Der Versuch, ein anderes Fenster zu toppen obwohl ein Fen-
  172.                     sterdialog geöffnet ist, führt nun zum Toppen dieses Dialo-
  173.                     ges.
  174.  
  175.          09.10.93  -Statt generellen Tests auf MultiTOS (alte Variable 'mtos!')
  176.                     wird jetzt gezielt die AES-Version (neue Variable
  177.                     'rsc_aes&') oder die Multitasking-Fähigkeit (neue Variable
  178.                     'rsc_mtsk!') zur Entscheidung herangezogen.
  179.  
  180.                    -Vorhandensein der 3D-Objekte wird jetzt nicht mehr an der
  181.                     AES-Version >=3.34, sondern an >=3.40 festgemacht.
  182.  
  183. 4.7ß     19.11.93  -Beim Aufruf eines Popups über die Tastatur ist jetzt immer
  184.                     ein Eintrag selektiert, auch wenn der Mauszeiger außerhalb
  185.                     des Menüs steht.
  186.  
  187.          09.01.94  -In 'rsc_exit' wurde vergessen, auch 'rsc_userblk%' wieder
  188.                     mit MFREE() freizugeben. Das ist allerdings auch nur im
  189.                     Interpreter nötig.
  190.  
  191.          15.01.94  -Der 'Ping' wird jetzt mit ~BIOS(3,2,7) erzeugt, da das um
  192.                     einiges kürzer als OUT 2,7 ist.
  193.  
  194.                    -In den Fensterroutinen fehlten die Geisterdials.
  195.  
  196.          18.01.94  -'rsc_popup' kann jetzt auch zum Aufrufen eines Popups _ohne_
  197.                     darunterliegendem Dialog benutzt werden. Dazu ist 'button&'
  198.                     auf 0 zu setzen. Bsp.: ~@rsc_popup(FALSE,0,0,pop_fkt|,1)
  199.  
  200.          19.01.94  -'rsc_walk_tree' überarbeitet: a$ war zuviel, die Button-
  201.                     Behandlung, insbesondere die von Checkboxen, wurde leicht
  202.                     geändert.
  203.  
  204.                    -Checkboxen können jetzt einen dritten Status neben "ange-
  205.                     kreuzt" / "nicht angekreuzt" haben: Wenn das Flag CHECKED
  206.                     gesetzt ist, aber nicht SELECTED, wird die Checkbox mit
  207.                     einem Punktmuster gefüllt ("Tristate-Button"). Zur Verwal-
  208.                     tung dient die Prozedur 'rsc_tristate' aus EXTENDED.LST.
  209.                     Das Objekt darf nicht SELECTABLE sein, aber TOUCHEXIT.
  210.  
  211.          23.01.94  -Wird 'rsc_laden' als Anzahl der Objektbäume -1 übergeben,
  212.                     so werden die Daten automatisch ermittelt.
  213.  
  214.                    -Der 3D-Effekt bei Buttons sah etwas merkwürdig aus. Ich
  215.                     weiß nicht mehr, bei welcher Version das verhunzt wurde,
  216.                     jetzt ist es jedenfalls wieder in Ordnung.
  217.  
  218.                    -Bei normalen Dialogen wird jetzt ein führendes Space im
  219.                     Titel übersprungen. Vorteil: Der Titel eines Fensterdialoges
  220.                     kann links und rechts jeweils ein Leerzeichen haben, was
  221.                     einfach schöner aussieht.
  222.  
  223.          06.02.94  -Neues Flag bei 'rsc_draw': Ist Bit 2 gesetzt, wird ein
  224.                     Fensterdialog sofort beim Aufruf gezeichnet, ansonsten wie
  225.                     gehabt erst bei 'rsc_do'.
  226.  
  227. 4.7    * 12.02.94  -'rsc_exit' umgestellt, kleinere Bugs behoben.
  228.  
  229. 4.8      22.02.94  -Leider kam um ich um die Einführung einer eigenen Cursor-
  230.                     Setz-Prozedur ('rsc_cursor()') nicht herum. Dafür sind
  231.                     jetzt einige Probleme mit dem Eingabezeiger (z.B. bei den
  232.                     Geisterdials) behoben. 'rsc_movedial' benutzt diese
  233.                     Prozedur.
  234.  
  235.                    -Der Unterstrich bei Dialogtiteln wird jetzt einen Pixel
  236.                     tiefer gezeichnet.
  237.  
  238.        * 28.02.94  -'rsc_movedial': Das Setzen des Cursors wird unterlassen,
  239.                     wenn es kein editierbares Objekt gibt.
  240.  
  241. 4.9      23.05.94  -Die Freigabe von 'rsc_userblk%' in 'rsc_exit' klappte
  242.                     nicht (Frank Rüger).
  243.  
  244.                    -Bei allen OBJC_DRAWs wird jetzt 7 als max. Tiefe
  245.                     gesetzt.
  246.  
  247.                    -Radiobuttons etwas verkleinert, einigen Leuten waren
  248.                     sie zu groß.
  249.  
  250.                    -OBJC_CHANGE() in 'rsc_popup' korrigiert, setzte immer 1
  251.                     als OB_STATE und überschrieb damit alle anderen Bits
  252.                     (David Reitter).
  253.  
  254.                    -Test auf APPL_GETINFO() überprüft zusätzliche das Vor-
  255.                     handensein der Pseudo-Applikation "?API" (Frank Rüger).
  256.  
  257.          01.06.94  -'Dialog sofort zeichnen'-Modus bei 'rsc_draw' war nicht
  258.                     korrekt implementiert.
  259.  
  260.        * 02.06.94  -'-1' für die Anzahl der Bäume in 'rsc_laden' nicht
  261.                     mehr zulässig. Gab zuviele Probleme...
  262.  
  263. ---------------------------------------------------------------------------
  264.